package Tester;

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;

import java.util.ArrayList;
import java.util.Date;

public class ClasPruebaFunciones {
    public ClasPruebaFunciones() {
        super();
    }

    public static void main(String[] args) throws ParseException {
        /**Clase usada para probar funciones*/
        //saco la fecha actual del sistema
        Date fechaActual = new Date();
        //especifico el formato que quiero la cadena
        SimpleDateFormat formato1 = new SimpleDateFormat("dd/MM/yyyy");
        SimpleDateFormat formato2 = new SimpleDateFormat("ddMMyyyyhhmm");
        //obtengo la cadena
        String cadenaFecha1 = formato1.format(fechaActual);        
        System.out.println("fecha actual de sistema formato1: "+cadenaFecha1);
    
        String cadenaFecha2 = formato2.format(fechaActual);        
        System.out.println("fecha actual de sistema formato2: "+cadenaFecha2+"\n");
        
        System.out.println("********************************************");
        System.out.println("procedo a experimentar con el uso de fechas:");
        System.out.println("********************************************\n");
        
        Date fecha = new Date();
               DateFormat dfDefault = DateFormat.getInstance();
               DateFormat dfDateInstance = DateFormat.getDateInstance();
               DateFormat dfDateShort = DateFormat.getDateInstance(DateFormat.SHORT);
               DateFormat dfDateMedium = DateFormat.getDateInstance(DateFormat.MEDIUM);
               DateFormat dfDateLong = DateFormat.getDateInstance(DateFormat.LONG);
               DateFormat dfDateFull = DateFormat.getDateInstance(DateFormat.FULL);

               System.out.println("getInstance()=" + dfDefault.format(fecha));
               System.out.println("getDateInstance()=" + dfDateInstance.format(fecha));
               System.out.println("getDateInstance(DateFormat.SHORT)=" + dfDateShort.format(fecha));
               System.out.println("getDateInstance(DateFormat.MEDIUM)=" + dfDateMedium.format(fecha));
               System.out.println("getDateInstance(DateFormat.LONG)=" + dfDateLong.format(fecha));
               System.out.println("getDateInstance(DateFormat.FULL)=" + dfDateFull.format(fecha));
               try {
                   Date fecha2 = dfDateMedium.parse("27/03/1976");
                   Date fechaMal = dfDateMedium.parse("31/04/1999");
                   System.out.println("Parsed dfDateMedium: " +dfDateMedium.format(fecha2));
                   System.out.println("Parsed :" + fecha2);
                   System.out.println("Parsed Mal:" + fechaMal);
               } catch (ParseException ex) {
                   ex.printStackTrace();
               }
               
             //caravana guardo la multiplicacion de los numeros
               System.out.println("********************************************");
               System.out.println("procedo a experimentar con el uso de array de letras y numeros:");
               System.out.println("********************************************\n");
           	//serie para chequear el numero verificador
               //posiciones         { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10}
           	final int[] serieNumer= { 7, 6, 5, 4, 3, 2, 7, 6, 5, 3, 2};
           	final int[] serieCaravana= {};
           	//armo la lista de las letras para comprobar con la serie de numeros.
           	System.out.println("pos  |  numero");
           	for (int x = 0; x < serieNumer.length; x++) {
           		System.out.println(x+" | "+serieNumer[x]);
           	}
           	System.out.println("pos  |  numero");
           	java.util.List<String> charArray = new ArrayList<String>();
           	int i = 0;
           	for ( char c = 65; c <= 90; ++c ){
           		charArray.add(String.valueOf(c));
 //transformar el char en int 
           		System.out.println("char: "+ (int)charArray.get(i).charAt(0));
           		System.out.println(charArray.get(i)+" | "+c);
           		i++;
           	}
           	//devuelvo la lista de letras para corrobara
//           	for (String string : charArray) {
//           		System.out.println(", letra: "+string);
//           		
//           	}
          //caravana guardo la multiplicacion de los numeros
            System.out.println("********************************************");
            System.out.println("prueba del mod y resto de divicion");
            System.out.println("********************************************\n");
            
            System.out.println("67/10= "+67/10);
            System.out.println("67%10= "+67%10);
            System.out.println("678%10= "+678%10);
            System.out.println("678/10= "+678/10);
            System.out.println("678/100= "+678/100);
            System.out.println("678%100= "+678%100);
            System.out.println("(678%100)/10= "+(678%100)/10);
            System.out.println("10003%10000"+10003%10000);
            System.out.println("20003%10000= "+20003%10000);
            System.out.println("30003%10000= "+30003%10000);
            System.out.println("40003%10000= "+40003%10000);
            
            
            System.out.println("********************************************");
            System.out.println("prueba del reemplazo de caracteres");
            System.out.println("********************************************\n");
            String reemplazo = " palabras";
            System.out.println("cambio :"+reemplazo.replace(" ","%"));

            
    }
}
